Git LFS大文件

Git LFS大文件

什么是git lfs

Git LFS(Large File Storage),用以帮助git管理比较大的文件。git的diff等是基于文件。对于二进制文件来说,git需要存储每次提交的变动。git fls对于追踪的文件只会保存一个指向其的指针。不会在本地仓库保存你每次提交的所有版本。对于历史提交版本,基本上我们都很少去动,不需要检出。所以这样极大的节省了空间和仓库拉取速度。
核心:把需要进行版本管理、但是占用很大空间的文件独立于Git仓库管理,加快clone仓库速度。

安装

lfs目前是git扩展,没有被加入git核心。所以就需要有个安装的步骤。
注意:安装git lfs需要 git版本>=1.8.2

Mac

  1. 安装homebrew(安装过的下一步)
1
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
  1. brew install git-lfs
  2. git lfs install

Windows

  1. 下载安装windows installer
  2. 运行windows installer
  3. git lfs install

使用

cd进项目目录
首先git lfs track ”XX“来告诉lfs需要处理哪些文件。

1
git lfs track "*.a"  // 追踪所有后缀为a的文件

此命令执行后,会在项目根目录下创建一个名为”.gitattributes“的文件。

1
2
cat .gitattributes      
xx.a filter=lfs diff=lfs merge=lfs -text

注意:.gitattributes文件是需要加入版本控制的。

1
2
3
git add .gitattributes
git add xx.a
git commit -m "Add xx.a"

其他

  1. git lfs ls-files 可以显示当前被lfs追踪的文件列表
  2. git lfs track 查看现有的文件追踪模式
  3. git lfs untrack "*xx.a" 取消git fls对xx.a的追踪管理
  4. git lfs version 查看当前所用git lfs版本
  5. git lfs pull 如果起之前拉代码时,没有同时获取lfs对象,之后又需要将被lfs追踪的文件时,可执行此命令来拉取

参考链接

阿里云 - 如何使用 Git LFS

感谢你的打赏哦!